﻿using SqlSugar;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Zhao.Models.DTO
{
    /// <summary>
    /// 球馆申请DTO
    /// </summary>
    public class VenueApplicationDTO
    {
        /// <summary>
        /// 申请记录ID（数据库自增）
        /// </summary>
        public int ApplicationID { get; set; }

        /// <summary>
        /// 申请球馆名称（必填）
        /// </summary>
        [Required(ErrorMessage = "球馆名称不能为空")]
        [StringLength(100, ErrorMessage = "名称长度不能超过100字")]
        public string VenueName { get; set; } = null!;

        /// <summary>
        /// 球馆详细地址（必填）
        /// </summary>
        [Required(ErrorMessage = "地址不能为空")]
        public string Address { get; set; } = null!;

        /// <summary>
        /// 球馆图片
        /// </summary>
        [Required(ErrorMessage = "请上传营业执照")]
        public string Images { get; set; } = null!;

        /// <summary>
        /// 联系电话（必填，平台联系用）
        /// </summary>
        [Required(ErrorMessage = "联系电话不能为空")]
        [Phone(ErrorMessage = "无效的电话格式")]
        public string ContactPhone { get; set; } = null!;

        /// <summary>
        /// 球馆介绍
        /// </summary>
        public string? Description { get; set; }

        /// <summary>
        /// 审核状态：1-待审,3-通过,5-拒绝（仅后台返回）
        /// </summary>
        public short? Status { get; set; }

        /// <summary>
        /// 审核意见（仅后台返回）
        /// </summary>
        public string? ApprovalOpinion { get; set; }

        /// <summary>
        /// 申请人名称
        /// </summary>
        public string CreatedByUser { get; set; }
        /// <summary>
        /// 审核人员名称
        /// </summary>
        public string ReviewName { get; set; }

        /// <summary>
        /// 申请提交时间（自动记录）
        /// </summary>
        public DateTime? CreatedAt { get; set; }

        /// <summary>
        /// 最后状态更新时间（自动记录）
        /// </summary>
        public DateTime? UpdatedAt { get; set; }
        /// <summary>
        /// 球馆Id（如审核通过就不为空）
        /// </summary>

        public Guid? VId { get; set; }
        /// <summary>
        /// 负责人名称
        /// </summary>
        public string ManagerName {  get; set; }
        /// <summary>
        /// 省
        /// </summary>
        public int Province { get; set; }
        /// <summary>
        /// 市
        /// </summary>
        public int City { get; set; }
        /// <summary>
        /// 区
        /// </summary>
        public int District { get; set; }
        /// <summary>
        /// 球馆营业执照
        /// </summary>
        public string LicenseImage { get; set; }
    }
}
